<?php
	
/*
 * Modelo: "tipo_proveedores.php"
 *
 * Realizado por:
 * 	Carlos Calvo.
 */
 
	@include_once('sybasebd.php');
	@include_once('auditoria.php');
	
	class Tipo_proveedores {
					
		// Variables del Modelo
		var $id_tipo_proveedor;
		var $nombre;
		var $descripcion;
		var $cantidad;					
		var $respuesta;
		
		
		//	FUNCION - VERIFICAR UN TIPO DE PROVEEDOR
		// =================================================================================================================
		function verificar_tipo_proveedor( $id_tipo_proveedor ) {		
			$conexion = new Sybasebd;
            $var = $conexion->conexion_BD($_SESSION['manejador_bd'],$_SESSION['usuario_bd'],$_SESSION['password_bd'],$_SESSION['base_de_datos'],$_SESSION['rol_bd']);
			
			$sql = "select id_tipo_proveedor as id_tipo_proveedor 
					from tipo_proveedor 
					where id_tipo_proveedor = ".$id_tipo_proveedor;
						
			//echo "<br>SQL: ".$sql."<br>";
			$this->respuesta = $conexion->consulta_BD($sql) or die("No se pudo consultar el Tipo de Proveedor.");
			$this->respuesta = $conexion->fetch_array_BD();
			
			$conexion->desconectar_BD;			
			if ( $this->respuesta[id_tipo_proveedor] != "" ) {				
				return false;					// Si Existe
			} else {		
				return true;					// Si no Existe
			}
		}
		
		
		//	FUNCION - INSERTAR UN TIPO DE PROVEEDOR
		// =================================================================================================================
		
		function insertar( $id_tipo_proveedor, $nombre, $descripcion, $cantidad ) {			
			$ocurrencia = $this->verificar_tipo_proveedor( $id_tipo_proveedor );
			
			if ( $ocurrencia == true ) {						
				$conexion = new Sybasebd;
				$var = $conexion->conexion_BD($_SESSION['manejador_bd'],$_SESSION['usuario_bd'],$_SESSION['password_bd'],$_SESSION['base_de_datos'],$_SESSION['rol_bd']);
							
				$sql = "insert into tipo_proveedor (id_tipo_proveedor, nombre, descripcion, cantidad) values (";
				
				$sql = $sql.$id_tipo_proveedor.", ";
				$sql = $sql."'".strtoupper($nombre)."', ";
				$sql = $sql."'".strtoupper($descripcion)."', ";
				$sql = $sql.$cantidad.")";
								
				//echo "<br>SQL: ".$sql."<br>";
				$this->respuesta = $conexion->consulta_BD($sql) or die("No se pudo agregar el Tipo de Proveedor ".$nombre.".");
												
				// Registro de Auditoria
				$auditoria 	= new Auditorias;
				$this->respuesta = $auditoria->insertar( $_SESSION['nombre_usuario'],  "30" );
							
				$conexion->desconectar_BD;												
				return true;
			} else {
				return false;
			}
		}
		
				
		//	FUNCION - MODIFICAR UN TIPO DE PROVEEDOR
		// =================================================================================================================
				
		function modificar( $id_tipo_proveedor, $descripcion ) {			
			$conexion = new Sybasebd;
            $var = $conexion->conexion_BD($_SESSION['manejador_bd'],$_SESSION['usuario_bd'],$_SESSION['password_bd'],$_SESSION['base_de_datos'],$_SESSION['rol_bd']);
			
			$sql = "update tipo_proveedor set 
						descripcion = '".strtoupper($descripcion)."' 
					where id_tipo_proveedor = ".$id_tipo_proveedor;
						
			echo "<br>SQL: ".$sql."<br>";
			$this->respuesta = $conexion->consulta_BD($sql) or die("No se pudo modificar el Tipo de Proveedor ".$id_tipo_proveedor.".");
			
			// Registro de Auditoria
			$auditoria 	= new Auditorias;
			$this->respuesta = $auditoria->insertar( $_SESSION['nombre_usuario'],  "31" );
						
			$conexion->desconectar_BD;			
			return true;
		}
		
		
		//	FUNCION - CONSULTAR TODOS LOS TIPOS DE PROVEEDORES
		// =================================================================================================================
		
		function consultar( $auditoria ) {			
			$conexion = new Sybasebd;
            $var = $conexion->conexion_BD($_SESSION['manejador_bd'],$_SESSION['usuario_bd'],$_SESSION['password_bd'],$_SESSION['base_de_datos'],$_SESSION['rol_bd']);
			
			$sql = "select id_tipo_proveedor as id_tipo_proveedor,
						nombre as nombre,
						descripcion as descripcion,
						cantidad as cantidad 
					from tipo_proveedor
					order by id_tipo_proveedor";
									
			//echo "<br>SQL: ".$sql."<br>";
			$this->respuesta = $conexion->consulta_BD($sql) or die("No se pudo consultar los Tipos de Proveedores.");			
			$i = 0;
			while ( $this->respuesta = $conexion->fetch_array_BD() ) {
				$lista_tipo_proveedores[$i][0] = $this->respuesta[id_tipo_proveedor];
				$lista_tipo_proveedores[$i][1] = $this->respuesta[nombre];
				$lista_tipo_proveedores[$i][2] = $this->respuesta[descripcion];
				$lista_tipo_proveedores[$i][3] = $this->respuesta[cantidad];			
				$i++;
			}
			
			if ( $auditoria == "S" ) {
				// Registro de Auditoria
				$auditoria 	= new Auditorias;
				$this->respuesta = $auditoria->insertar( $_SESSION['nombre_usuario'],  "32" );
			}
			
			$conexion->desconectar_BD;
			return $lista_tipo_proveedores;
		}
		
		
		//	FUNCION - ELIMINAR UN TIPO DE PROVEEDOR
		// =================================================================================================================
				
		function eliminar( $id_tipo_proveedor ) {			
			$conexion = new Sybasebd;
			$var = $conexion->conexion_BD($_SESSION['manejador_bd'],$_SESSION['usuario_bd'],$_SESSION['password_bd'],$_SESSION['base_de_datos'],$_SESSION['rol_bd']);
			
			$sql = "delete from tipo_proveedor 
					where id_tipo_proveedor = '".$id_tipo_proveedor."'";
															
			//echo "<br>SQL: ".$sql."<br>";
			$this->respuesta = $conexion->consulta_BD($sql) or die("No se pudo Eliminar el Tipo de Proveedor ".$id_tipo_proveedor.".");
			
			// Registro de Auditoria
			$auditoria 	= new Auditorias;
			$this->respuesta = $auditoria->insertar( $_SESSION['nombre_usuario'],  "33" );
			
			$conexion->desconectar_BD;		
			return true;
		}
		
		
		//	FUNCION - CONSULTAR UN TIPO DE PROVEEDOR
		// =================================================================================================================
		
		function consultar_tipo_proveedor( $id_tipo_proveedor ) {			
			$conexion = new Sybasebd;
            $var = $conexion->conexion_BD($_SESSION['manejador_bd'],$_SESSION['usuario_bd'],$_SESSION['password_bd'],$_SESSION['base_de_datos'],$_SESSION['rol_bd']);
									
			$sql = "select id_tipo_proveedor as id_tipo_proveedor, 
						nombre as nombre, 
						descripcion as descripcion, 
						cantidad as cantidad
					from tipo_proveedor 
					where id_tipo_proveedor = '".$id_tipo_proveedor."'";
						
			//echo "<br>SQL: ".$sql."<br>";
			$this->respuesta = $conexion->consulta_BD($sql) or die("No se pudo consultar el Tipo de Proveedor ".$id_tipo_proveedor.".");			
			$this->respuesta = $conexion->fetch_array_BD();
				$info_tipo_material[0] = $this->respuesta[id_tipo_proveedor];
				$info_tipo_material[1] = $this->respuesta[nombre];	
				$info_tipo_material[2] = $this->respuesta[descripcion];
				$info_tipo_material[3] = $this->respuesta[cantidad];
			
			$conexion->desconectar_BD;			
			return $info_tipo_material;
		}
		
		
		//	FUNCION - CONSULTAR ID_TIPO_PROVEEDORES
		// =================================================================================================================
		
		function consultar_id_tipo_proveedores() {			
			$conexion = new Sybasebd;
            $var = $conexion->conexion_BD($_SESSION['manejador_bd'],$_SESSION['usuario_bd'],$_SESSION['password_bd'],$_SESSION['base_de_datos'],$_SESSION['rol_bd']);
			
			$sql = "select id_tipo_proveedor as id_tipo_proveedor, 
						nombre as nombre
					from tipo_proveedor
					order by nombre";
									
			//echo "<br>SQL: ".$sql."<br>";
			$this->respuesta = $conexion->consulta_BD($sql) or die("No se pudo consultar los Id_tipo_proveedores de los Tipos de Proveedores.");			
			$i = 0;
			while ( $this->respuesta = $conexion->fetch_array_BD() ) {
				$lista_id_tipo_proveedores[$i][0] = $this->respuesta[id_tipo_proveedor];	
				$lista_id_tipo_proveedores[$i][1] = $this->respuesta[nombre];		
				$i++;
			}
			
			$conexion->desconectar_BD;
			return $lista_id_tipo_proveedores;
		}
		
		
		//	FUNCION - CONSULTAR ID_TIPO_PROVEEDOR PARA ELIMINAR
		// =================================================================================================================
		
		function consultar_eliminar() {			
			$conexion = new Sybasebd;
            $var = $conexion->conexion_BD($_SESSION['manejador_bd'],$_SESSION['usuario_bd'],$_SESSION['password_bd'],$_SESSION['base_de_datos'],$_SESSION['rol_bd']);
			
			$sql = "select id_tipo_proveedor as id_tipo_proveedor, 
						nombre as nombre 
					from tipo_proveedor
					where id_tipo_proveedor not in ( 
						select distinct(id_tipo_proveedor) 
						from proveedor )";
						
			//echo "<br>SQL: ".$sql."<br>";
			$this->respuesta = $conexion->consulta_BD($sql) or die("No se pudo consultar los Tipos de Proveedores para eliminar para Eliminar.");			
			$i = 0;
			while ( $this->respuesta = $conexion->fetch_array_BD() ) {
				$lista_eliminar[$i][0] = $this->respuesta[id_tipo_proveedor];
				$lista_eliminar[$i][1] = $this->respuesta[nombre];		
				$i++;
			}				
			
			$conexion->desconectar_BD;			
			return $lista_eliminar;
		}
	}
?>